package com.ev.asl.domain;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

/**
 * 检查成绩表
 * @author 姚家乐
 * @since 2021/5/26 12:40
 */
@Data
@ApiModel(value = "检查成绩表")
public class CheckResultDO implements Serializable {
    private static final long serialVersionUID = 1L;

    //自增主键
    @ApiModelProperty(value = "自增主键")
    private Long              id;

    //成型日报组别：0-A；1-B；2-C
    @ApiModelProperty(value = "成型日报组别：0-A；1-B；2-C")
    private Integer              group;

    /**
     * 检查编号
     */
    @ApiModelProperty(value = "检查编号")
    private String            checkNo;

    /**
     * 日期
     */
    @ApiModelProperty(value = "日期")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    private Date              billDate;

    /**
     * 生产日期
     */
    @ApiModelProperty(value = "生产日期")
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")
    private Date              productionDate;

    /**
     * 指示书ID
     */
    @ApiModelProperty(value = "指示书ID")
    private Long              instructionId;

    /**
     *  materiel_id
     */
    @ApiModelProperty(value = "产品id")
    private Long       materielId;

    /**
     *  materiel_name
     */
    @ApiModelProperty(value = "产品名称")
    private String       materielName;

    /**
     * 指示书或日报编号/调拨单号
     */
    @ApiModelProperty(value = "指示书")
    private String            instructionNo;

    /**
     * 指示数量
     */
    @ApiModelProperty(value = "指示数量")
    private BigDecimal instructionQty;

    /**
     * 日报id
     */
    @ApiModelProperty(value = "日报id")
    private Long              dailyId;

    /**
     * 日报编号
     */
    @ApiModelProperty(value = "日报编号")
    private String            dailyNo;

    /**
     * 产品ID
     */
    @ApiModelProperty(value = "产品ID")
    private Long              productId;

    /**
     * 产品
     */
    @ApiModelProperty(value = "产品")
    private String       product;

    /**
     * 批号
     */
    @ApiModelProperty(value = "批号")
    private String       batchNo;

    /**
     * 结果（0：合格，1：:不合格）
     */
    @ApiModelProperty(value = "结果（0：合格，1：:不合格）")
    private Integer       result;

    /**
     * 类型（0：首检，1：:终检）
     */
    @ApiModelProperty(value = "类型（0：首检，1：:终检）")
    private Integer      type;

    /**
     * 品质检查者id
     */
    @ApiModelProperty(value = "品质检查者id")
    private Long    qualityInspectorId;

    /**
     * 品质检查者name
     */
    @ApiModelProperty(value = "品质检查者name")
    private String     qualityInspectorName;

    /**
     * 品质担当者ID
     */
    @ApiModelProperty(value = "品质担当者ID")
    private Long     qualityBearerId;

    /**
     * 品质担当者name
     */
    @ApiModelProperty(value = "品质担当者name")
    private String    qualityBearerName;

    /**
     * 状态(0:计划,1:已批准,2:已提交)
     * 1、陈兵提交
     * 2、张绍明批准
     *
     */
    @ApiModelProperty(value = "状态(0:计划,1:已批准,2:已提交)", hidden = true)
    private Integer   status;

    /**
     * 创建人
     */
    @ApiModelProperty(value = "创建人", hidden = true)
    private Long    createBy;

    /**
     * 创建时间
     */
    @ApiModelProperty(value = "创建时间", hidden = true)
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    private Date   createTime;

    /**
     * 修改人
     */
    @ApiModelProperty(value = "修改人", hidden = true)
    private Long      updateBy;

    /**
     * 修改时间
     */
    @ApiModelProperty(value = "修改时间", hidden = true)
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    private Date   updateTime;

    /**
     * 删除状态(0:未删除，1：已删除)
     */
    @ApiModelProperty(value = "删除状态(0:未删除，1：已删除)", hidden = true)
    private Integer    delFlag;

    /**
     * 1:成型，2：组装
     */
    @ApiModelProperty(value = "1:成型，2：组装", hidden = true)
    private Integer    isChooseShow;

    /**
     * 备注
     */
    @ApiModelProperty(value = "1:成型，2：组装", hidden = true)
    private String    remarks;

    @ApiModelProperty(value = "规格型号")
    private String specification;

    @ApiModelProperty("部门名称")
    private String deptName;


    @ApiModelProperty("部门id")
    private Integer deptId;


    @ApiModelProperty("数量")
    private BigDecimal qty;


    @ApiModelProperty("主单位id")
    private Integer mainUnitId;


    @ApiModelProperty("主单位名称")
    private String mainUnitName;


    @ApiModelProperty("库存id")
    private Integer stockId;

}
